package com.example.mykotlin.model.dto

import io.swagger.v3.oas.annotations.media.Schema
import jakarta.validation.constraints.Min
import jakarta.validation.constraints.NotNull

@Schema(name = "InsertUserPermissionsDTO", title = "用户分配权限")
data class InsertUserPermissionsDTO(
    @Schema(title = "用户的唯一标识符")
    @field:Min(value = 1, message = "主键不能小于1")
    @field:NotNull(message = "不能为空")
    var userId: Long? = null,

    @Schema(title = "需要增加的权限主键列表")
    var addPermissionList: MutableSet<String>? = null,

    @Schema(title = "需要排除的权限主键列表")
    var excludedPermissionList: MutableSet<String>? = null,

    @Schema(title = "需要删除的权限主键列表")
    var removePermissionList: MutableSet<String>? = null,

)
